System and method for proximity-based personalized content recommendations

ABSTRACT

Systems and methods for generating and outputting personalized content recommendations are provided. When it is determined that two or more users are in close proximity to each other, the two or more users&#39; respective media content libraries may be compared. Commonalities or related aspects of the two or more users&#39; respective media content libraries can be determined and leveraged to generated personalized content recommendations.

TECHNICAL FIELD

The present disclosure relates generally to media contentrecommendation.

DESCRIPTION OF THE RELATED ART

Broadcasting can refer to the distribution of media content (e.g.,audio, video, etc.) to a dispersed audience via some mass communicationsmedium. The mass communications medium may be a cable network, a datanetwork, radio waves, and the like. Digital distribution can refer tothe delivery of media content without the use of physical media. Digitaldistribution has become popular due to advances in computer networkingand communication technologies.

BRIEF SUMMARY OF THE DISCLOSURE

In accordance with one embodiment of the present disclosure, acomputer-implemented method comprises determining whether a first useris proximate to a second user. The computer-implemented method furthercomprises providing a recommendation of media content to consume basedon one or more characteristics associated with the first and secondusers.

In accordance with another embodiment of the present disclosure, anapparatus comprises a processor and a memory unit operatively connectedto the processor. The memory unit includes computer code adapted tocause the processor to: receive at least one of active and passive inputfrom a plurality of users proximate to each other; receive at least oneof temporal input indicative of a current time and environmental inputindicative of an environment in which the plurality of users arecurrently present; determine at least one of common and related aspectsof the at least one of the active, passive temporal, and environmentalinputs relative to one or more media contents comprising respectivemedia libraries of each of the plurality of users; and output at leastone recommendation for the one or more media contents based upon the atleast one of common and related aspects.

BRIEF DESCRIPTION OF THE DRAWINGS

The present disclosure, in accordance with one or more variousembodiments, is described in detail with reference to the followingfigures. The figures are provided for purposes of illustration only andmerely depict typical or example embodiments.

FIG. 1A is an operational flow diagram illustrating an example processfor personalized content recommendations in accordance with variousembodiments.

FIG. 1B is an operational flow diagram illustrating an example processfor receiving inputs and generating outputs for personalized contentrecommendations in accordance with various embodiments.

FIG. 2A illustrates an example environment in which various embodimentsmay be implemented.

FIG. 2B illustrates an example user device utilized in providingpersonalized content recommendations in accordance with variousembodiments.

FIG. 2C illustrates an example GUI used for presenting and/orinteracting with personalized content recommendations in accordance withvarious embodiments.

FIG. 3 illustrates an example communications system with which variousembodiments may be implemented.

FIG. 4 is an example computing module that may be used to implementvarious features of embodiments described in the present disclosure.

The figures are not exhaustive and do not limit the present disclosureto the precise form disclosed.

DETAILED DESCRIPTION

As previously discussed, digital distribution has become popular due toadvances in computer networking and communication technologies. Oneexample of digital distribution involves a server downloading orstreaming non-linear media content to a user device over a data network,such as the Internet. Streaming media access or downloadable mediacontent can be provided by traditional broadcasting entities,third-party media content providers, studios that create and/or producemedia content, etc. In some instances, a user may pay a monthly fee fora subscription to a media content service provided by a media contentprovider. The user may then access media content in the media contentprovider's media content library to download or stream to a user device.For example, the user can utilize a client media player, mediapresentation application, web browser, etc. that can connect to andaccess desired media content from, e.g., a server hosted by the mediacontent provider. A user may also rent media content by paying a fee toaccess the desired media content from a media content provider for somepredetermined amount of time, or a user may purchase the media contentoutright for a fee. A user may also have the ability to create orgenerate his/her own library of media content. It should be noted thatmedia content in accordance with various embodiments may include, but isnot limited to digital music, movies, TV shows, pictures, eBooks, audiobooks, video games, etc. Although various embodiments disclosed hereinare directed to media content that is provided by some content providersuch as a broadcasting entity, media content can also be provided byusers, e.g., digital videos taken by users themselves.

The aforementioned systems and methods of digitally distributing mediacontent are premised upon a single user, subscriber, or entity havingaccess to the media content. Sharing of media content may be difficultdue to digital rights managements (DRM) restrictions that may beassociated with the media content. Moreover, deciding which mediacontent to consume, for example, can be a laborious process when two ormore users are involved.

Therefore, various embodiments described herein provide systems andmethods for personalized content recommendations between two or moreusers. Accordingly, when two (or more) users are proximate to eachother, the users may be associated, “bound” or paired together such thatone or both users may be presented with one or more recommendations formedia content. Once selected, media content can be presented by a userdevice associated with the user having rights to present or consume themedia content, or temporary access can be granted to that user's digitalmedia content on a second user's device. In determining personalizedcontent recommendations, the analysis of factors including, but notlimited to the environment in which the two or more users are currentpresent, the time, commonalities between the two or more users regardingtheir respective media content libraries, media content preferences,history, and the like, can also be applied to targeted advertising andcontent discovery.

FIG. 1A is an operational flow chart illustrating example processesperformed for providing content recommendations when two or more usersare proximate to each other in accordance with various embodiments. Atoperation 100, a determination is made regarding whether a first user isproximate to a second user. This determination can be made based uponinformation gleaned from location-based services (described below andillustrated in FIG. 3), or a discovery protocol through which userdevices associated with the first and second users broadcast and/orreceive messages or indications of the first and second users' mediacontent application ID, user device IP address, etc. Still other methodsof determining proximity can involve cameras or sensors associated withuser devices that can be leveraged to determine the presence of two ormore users at a location, as well as determining users on a givennetwork or network subnet, determining users accessing a particular WiFirouter, and/or determining users via personal identifiers, such as RFIDsand Bluetooth IDs.

As illustrated in FIG. 2A, system 200 can include a first user device202A. First user device 202A may include a processor 204A, a memory unit206A, a display 208A, and can be configured to store downloaded digitalmedia content, stream digital media content, etc. for presentation ondisplay 208A or a separate or stand-alone display, e.g., display 208C.First user device 202A may be a DVR, a cable/satellite/internet protocoltelevision (IPTV)/over-the-top (OTT) set-top box, a gaming console, atablet personal computer (PC), a smart phone, a laptop PC, etc. Display208C may be a TV, monitor, or other presentation/media contentconsumption apparatus. First user device 202A may be associated with afirst user, where the first user has a subscription or account with amedia content service through which media content can be provided bycontent provider 212. The first user may have purchased, rented, orsubscribed to one or more media content. Thus, the first user may have afirst media content library comprising that purchased, rented, orsubscription media content.

System 200 can also include a second user device 202B. Like first userdevice 202A, second user device 202B may include a processor 204B, amemory unit 206B, a display 208B, and can be configured to storedownloaded digital media content, stream digital media content, etc. forpresentation on display 208B or a separate display, e.g., display 208C.Second user device 202B may be a digital video recorder (DVR), acable/satellite/internet protocol television (IPTV)/over-the-top (OTT)set-top box, a gaming console, a tablet personal computer (PC), a smartphone, a laptop PC, etc. Second user device 202B may be associated witha second user, where the second user may have a subscription or accountwith the same media content service. The second user may have his/herown library of media content that the second user has subscribed to,purchased, or rented from content provider 212.

In some embodiments, one or more of user devices 202A or 202B may be awearable identification device, such as a watch, an ID band, glasses,etc. In some embodiments, the user devices 202A or 202B may belong to auser, i.e., the user's personal device, or may be provided by some otherentity, such as a media content provider. It should be noted that firstand second user devices 202A and 202B need not be the same type ofdevice. That is, and in accordance with one example scenario, first userdevice 202A may be a smartphone, and second user device 202B may be awearable identification device.

System 200 may further include one or more media content providers 212,which may be a broadcast entity, such as a television broadcast networkentity (e.g., ABC), a cable provider (e.g.,COMCAST®) , or any otherdigital media content distributor, such as Amazon®, iTunes®, Netflix® orother third-party distributor of media content. Content provider 212 mayinclude a content server 214 on which digital media content 216 can bestored, along with any required entitlements, other entitlementinformation, DRM licenses, etc. which can be maintained in entitlementdatabase 218.

System 200, in accordance with some embodiments, may further include acentral server 220 that can act as a unifying entity that can bind orassociate users across providers, networks, etc., such as multiple mediacontent providers. That is, central server 220 can provide personalizedcontent recommendations (as well as content sharing) between, e.g., twoor more distinct content providers. For example, users need notsubscribe to the same media content provider service in order to sharecontent and/or receive personalized content recommendations when inproximity to each other in accordance with various embodiments.

It should be noted that one or more licenses or temporary licenses canbe created, utilized, and/or transferred to the appropriate entities inaccordance with various embodiments. Such licenses can be configured toaccount for varying levels of access and/or distribution, time limits,usage limits, and can be partitioned if need be. For example, inaccordance with one of the aforementioned scenarios, media contentprovider 212 may provide a temporary license to an instance of mediacontent. In this way, user device 202B may have the ability to presentmedia content belonging to or rented by a first user associated withuser device 202A.

Network 210 may be any communications network such as a cellular or datanetwork, a satellite network, an intranet, an extranet, a virtualprivate network (VPN), a local area network (LAN), a wireless LAN(WLAN), a wide area network (WAN), a personal area network (PAN), aportion of the Internet, a portion of the Public Switched TelephoneNetwork (PSTN), or any combination thereof. Accordingly, network 210 mayemploy various communication media, such as a coaxial cable, fiber opticcable system, Ethernet, radio waves, etc. Further still, network 210 maybe one or more combinations of any of the aforementioned networks.

The first and second users may be paired upon a determination ofproximity. Pairing of the first and second users may entail one or moreof the following: pairing of their respective media content libraries,pairing of their respective accounts, pairing of their respective userdevices, temporary granting of entitlements, etc. It should be notedthat operation 102 is optional. For example, the first or second usermay be allowed access to the other user's media content library without“pairing” having to occur vis-à-vis 1-way sharing.

In one example, both the first and second users may be logged into theirrespective media content service accounts. Upon coming into closeproximity to each other, the first and second user devices 202A and 202Bmay exchange the first and second user's respective media contentservice IDs, where the respective IDs are associated with media contentservice applications running on the first and second user devices 202Aand 202B. This can occur, for example, if the first user visits thesecond user's home, and the first user device 202A may receive a messageor indication broadcast by the second user device 202B containing thesecond user's media service application user ID. It should be understoodthat the first user device 202A may be engaged in a commensuratescanning operation to receive the broadcast message or indication. Thiscan be achieved using some form of discovery protocol or schema.

It should also be understood that although various embodiments aredescribed in the context of a media content service ID exchange ordiscovery, pairing can be accomplished based on, but not limited to thefollowing: recognizing the first and/or second user's known InternetProtocol (IP) address(es) associated with his/her device; a recognitionthat at least some media content within the first and second user'smedia content library overlaps; and an application ID identifying theinstance of the media content service application that is running on theusers' devices. Moreover, the exchange of the first and second user'srespective media content service IDs can occur at the media contentprovider 212 and/or central server 220. That is, user device 202A anduser device 202B do not have to be involved in this exchange, and theexchange can be performed without a priori knowledge of accounts,identities, etc., on the part of the first and second users.

Ultimately, the first and second users may be bound with regard to theirrespective media content libraries, such that one or more personalizedcontent recommendations can be provided based on one or more aspects ofthe respective media content libraries. For example, personalizedcontent recommendations can take into account common aspects of eachusers' media content library, such as commonly owned/rented movies,common genres, common performers, as well as common, recently consumedcontent.

It should be noted that the degree of proximity required for binding thefirst and second users may vary. The requisite proximity may beachieved, as alluded to above, by virtue of the first user visiting thesecond user's home and the first and second user devices 202A and 202Brecognizing the first and second user's respective media serviceapplication IDs. Hence, a proximity determination may be based on somegeneral geographic location or range. For example, first user device202A may be the first user's smartphone, while device 202B may be thesecond user's set-top box, home PC, network-connected media system, etc.In other embodiments, as will be described in greater detail below, therequisite proximity may be based upon a more restrictive or lessrestrictive degree of proximity. For example, in one embodiment, wherethe first and second user devices 202A and 202B are both smartphones,the requisite proximity may be achieved upon the first and second userdevices 202A and 202B touching (e.g., by virtue of the user devices'respective near field communication (NFC) functionality, such as viaBluetooth® or WiFi). The proximity may be limited by a communicationtechnology such as Wi-Fi or Bluetooth, or set by a system operator to be20 feet for example. Moreover, proximity can be defined by either amedia content service or service application, for example, a maximumdistance between users when content recommendations are allowed and/orby a user of a device defining proximity as encompassing a group ofsubgroup of users, such as a school or classroom.

In accordance with some embodiments, the requisite proximity may bebased upon solely temporal and geographic proximity rather than anysignal exchange as in NFC communications. For example, sensors residentwithin each of the first and second user devices 202A and 202B maysimply report their respective locations back to the central server 220.Content provider 212 may then recognize that first and second userdevices 202A and 202B are co-located at the same point in time, andpersonalized content recommendations can be generated. Still other waysof determining proximity may include, for example, bio-sensing, such asvoice recognition.

The aforementioned binding or pairing can occur over network 210, whichprovides connectivity between content provider 212 and the first andsecond user devices 202A and 202B, respectively. For example, contentprovider 212 may become aware that two users of its media serviceapplication are in close proximity to each other. Content provider 212can allow the first and second users' media content libraries to bebound, which in turn allows for the combination of the first and secondusers' libraries to be the basis of one or more personalized contentrecommendations for the first and second user. Entitlement informationmay also then be shared by or between first and second user devices 202Aand 202B. That is, entitlements normally associated with first userdevice 202A may also be provided to second user device 202B and viceversa, although this is optional, as the presentation of contentselected from the personalized content recommendation(s) can occurthrough either first user device 202A or second user device 202Bdepending on which user owns/rents/subscribes to the selected content.For example, if the first user owns the selected content, the first usermay be prompted on first user device 202A to begin playback on firstuser device 202A or cast the selected content onto a communal device,such as display 208C or some other user device, such as a set-top boxconnected to display 208C.

Once the first and second users are no longer proximate to one another,access to the second user's media content library by the first userand/or access to the first user's media content library by the seconduser can be denied. In terms of personalized content recommendations,alternative recommendations may be provided to any remaining users thatare proximate to each other. Moreover, content selected from apersonalized content recommendation and being presented may be halted.Alternatively, the user with whom media content was being shared mayfinish consumption of that particular media content, or the mediacontent (which is, e.g., being streamed) may be substituted with anad-supported version of the media content rather than an ad-freeversion. In such an instance, embedded timecodes within differentversions of media content can be accessed and synchronized to allow anad-supported version to continue playing from a point in time where thepairing is no longer valid or lost or to limit the ability of a user toreplay or restart shared media content. In accordance with anotherembodiment, at the conclusion of a “paired session,” the user consumingthe shared media content may be presented with one or more options forpurchasing or renting his/her own instance of the shared media content,related media content, etc. Still other constraints can be placed on thetemporarily linked media content, such as limiting the number of shares,limiting the number of views, instituting a minimum geographicalproximity, or other limitation or constraint.

It should be further noted that proximity can be periodically oraperiodically checked or verified depending on how strictly contentprovider 212 or a user wishes to control media content access.Additionally, the binding or pairing described herein can occur onvarying levels. For example, and in accordance with one embodiment,users' media content libraries can be paired, whereas in accordance withanother embodiment, pairing can occur on a user profile or accountlevel. In accordance with still another embodiment, pairing can occur ona device level. Moreover, although various embodiments describe thebinding or pairing of two user devices, profiles, media contentlibraries, etc., more than two user devices, profiles, media contentlibraries, etc., can be bound or paired.

Returning again to FIG. 1A, a recommendation regarding media content toconsume based on one or more characteristics associated with at leastone of the first and second user is provided at operation 102. That is,upon a determination that the first user and the second user areproximate to each other, at least one characteristic of the first userthat relates to a characteristic of the second user is determined. Forexample, the first and second users of first user device 202A and seconduser device 202B, respectively, may have media content libraries withcertain action movies in common, a certain genre of music in common,etc. One or more personalized content recommendations can be generatedtaking into account these one or more commonalities.

FIGS. 1B and 2B will be discussed in conjunction with each other to moreparticularly describe the generation of the one or more personalizedcontent recommendations provided at operation 104. At operation 120 ofFIG. 1B, at least one of active and passive input from a plurality ofusers proximate to each other is received. One of the plurality of usersmay be the first user associated with first user device 202A (FIG. 2B).

Active input 233 can include one or more parameters or preferences inputby the first user into a personalized content recommendationsapplication or similarly configured user interface that can relay suchactive input to processor 204A. Such active input may comprise firstuser's interests, favorite actors/actresses, favorite content genre(e.g., action, sci-fi), thematic information and/or personalizedplayback lists for back-to-back playback of multiple contents over acertain time period or event, and the like.

Passive input 235 can include information regarding a user's purchasedmedia content libraries, one or more parameters or preferencesassociated with the first user which a system can observe from theuser's past content consumption history over a period of time,statistical analysis(es) of past content consumptions, or other relevantparameters or preferences associated with the first user, which are alsoinput into processor 204A. In some instances, active input 233 andpassive input 235 may include the same or similar parameters orpreferences, differing only in the manner in which the input isreceived, i.e., whether from the first user or from analyzinginformation associated or relevant to the first user. It should beunderstood that both active and passive input can include exclusionaryparameters or preferences, such as a preference for binding or pairing aparticular subset of proximate users and/or undesired preferences orparameters.

It should be noted that FIG. 2B illustrates an embodiment whereby firstuser device 202A receives such input, but in accordance with otherembodiments, it may be central server 220 and/or content provider 212that receives the input. In accordance with another embodiment, it maybe second user device 202B that receives the input. For example, betweenfirst user device 202A and second user device 202B, receipt of the inputand subsequent generation of personalized content recommendations canoccur based upon a random selection of which user device controls, somepredetermined order, and/or based upon characteristics of the userdevices. That is, considering that first user device 202A may be a smartphone, and second user device 202B may be a laptop computer, second userdevice 202B presumably has one or more characteristics making it moresuitable for receiving and processing input(s) to generate personalizedcontent recommendations. For example, second user device 202B may have alarger display size, longer battery life, more memory capacity, andgreater processing speed or power. However, first user device 202A mayhave more connectivity options allowing it to connect to network 210,which may be one deciding factor in determining which of a plurality ofuser devices should receive input and/or generate personalized contentrecommendations. Other factors can include connection speed, bandwidth,and/or cost, memory capacity, and the like.

Thus far, embodiments of the present disclosure have been described inthe context of provider-specific media content services or applications.However, personalized content recommendations need not be limited tothat context. For example, depending on which people/users are proximateto each other, movie recommendations at one or more nearby movietheaters (using position location to find nearest theaters) or in a homecan be provided. That is, if a determination is made that the first useris proximate to the second user, the first and second users beingspouses, recommended movies to watch may include romantic comedies.However, if the first user and second user that are proximate to eachother are a parent and child, user preferences, past contentconsumption, etc. may be used to generate movie recommendations gearedtowards G or PG-rated movies.

At operation 122 (FIG. 1B), at least one of temporal input andenvironmental input indicative of an environment in which the pluralityof users are currently present. For example, processor 204A of firstuser device 202A may receive temporal input from an internal clock 222A(or alternatively from a clock of another device, such as second userdevice 202B, display 208C). Time of day can be used, like theaforementioned active and passive inputs, as one factor in determiningwhat content to present in a personalized content recommendation.Following the above example of providing personalized contentrecommendations at home, time of day can be used as a predictive factor,where content suggested in personalized content recommendations maychange based on the current time of day. For example, it may bedetermined from statistical analyses of users' historical contentconsumption that content geared towards children cease at 8 pm onweeknights and 10 pm on weekend evenings, suggesting that these timesare bedtimes for the children in a particular household. Accordingly,personalized content recommendations provided prior to those times maybe geared towards content appropriate for younger consumers, whilepersonalized content recommendations provided after those times may begeared towards content appropriate for adult consumers.

Time or duration can be also be taken into account with respect tocontent consumption patterns, (which may be one form of passive input235). For example, content consumption history may show a pattern ofbrief periods of content consumption in the morning involving children'stelevision. This may be indicative of a morning ride to school in whichchildren tend to view short TV show episodes. Accordingly, personalizedcontent recommendations in such situations can be tailored toappropriate content for consumption based on the proximate users as wellas the time typically available to consume content.

With regard to environmental input 237 of FIG. 2B, processor 204A canreceive input indicative of the environmental characteristics currentlypresent relative to the plurality of users. For example, a plurality ofusers may be involved in an exercise class. Based on the aforementionedactive, passive, and/or temporal inputs, one or more personalizedcontent recommendations can be provided to one or more of the pluralityof users. Considering that the plurality of users may transition fromone type of exercise equipment, such as an elliptical exerciser toweight-lifting equipment, content suggested in the one or morepersonalized content recommendations can adapt. When the plurality ofusers is engaged in exercise activity using elliptical exercisers, thepersonalized content recommendations may be limited to music oraudio-based content given that the elliptical movement may not beconducive to viewing visual content, whereas when the plurality of usersis engaged in weight-lifting, recommended content may include visualcontent.

At operation 124 (FIG. 1B), at least one of common and related aspectsof the at least one of the active, passive, temporal, and environmentalinputs is determined. That is, any or all relevant inputs, preferences,parameters, exclusions, etc. contemplated herein may be analyzed forcommon or related aspects between the media content libraries of theplurality of users. It should be noted that one or more variousalgorithms and/or processing mechanisms can be utilized to arrive at oneor more personalized content recommendations. For example, differentweights may be assigned to different common or related aspects, wherecontent having greater commonality may be given greater priority in oneor more personalized content recommendations over content having lesscommonality.

At operation 126 (FIG. 1B), at least one recommendation based upon theat least one of the common and related aspects is output. In FIG. 2B, apersonalized content recommendation(s) 239 is shown as being output todisplay 208A of first user device 202A. It should be understood that thepersonalized content recommendation(s) 239 can be output to other userdevices as well, such as each user device associated with the pluralityof users whose media content libraries have been paired or bound andused to generate the personalized content recommendation(s) 239, and/orto a communal device, such as display 208C.

FIG. 2C illustrates an example GUI that may be presented to one or moreusers reflecting one or more personalized content recommendations inaccordance with various embodiments. FIG. 2C illustrates first userdevice 202A, which in this example may be a tablet PC. Display 208A maypresent the GUI within a dedicated personalized content recommendationsapplication, an existing media application, a dedicated media player,etc. The GUI can present one or more options regarding contentcommensurate with one or more personalized content recommendations.Options can be provided to view information about each recommendation(such as duration of a movie, actors/actresses, director), view visualrepresentations, consume clips, as well as engage in transactions forthat most popular content. In the example illustrated in FIG. 2C,content recommendation 240 includes at least movies A, B, and C. Optionsare presented to allow the first user of first user device 202A to viewmovies A, B, and C. Viewing movies A, B, and C may entail immediatelypresenting a movie on display 208A if the user has apreviously-purchased license or entitlement to watch the movie, orcasting the movies onto one or more different user devices. Additionaloptions exist for the first user to buy or rent movies A, B, and C onone or more platforms (a user can select amoung a plurality of platformsor services). Additionally, considering movies A, B, and C may have beenreleased on channels, after their theatrical release, processor 204A(FIG. 2A, 2B) for example, may search channels for broadcast timesand/or video-on-demand (VOD) viewing options and present such optionswhen available. It should be understood that the term “channel” in thiscontext is not limited to TV broadcast channels, but refers generally toany communication media or connection(s) capable of presenting mediacontent. Content recommendations 242 include movies D, E, and F, whichmay currently be in theatrical release only. In this case, the GUI canpresent options to pre-order the movie when it is later released on DVDor Blu-Ray or a digital stream or download, for example, and/or presentoptions (such as show times) for viewing at the nearest movie theater.In the case of transactions, a direct link to a transactional portalthat allows the first user to purchase, rent, or otherwise obtain theright/entitlement to consume that most popular media content from thesecond user (or an account to access content associated with the seconduser) may be provided. Alternatively, the GUI can be redirected to aresident web browser and the requisite content provider can be contactedfor transaction processing. It should further be noted that transactionscan occur on any available platform provided by one or more contentproviders, third-party content providers, distributors, retailers, etc.

As described previously, various embodiments of generating andoutputting one or more personalized content recommendations involvesdetermining proximity, location, environmental conditions, etc. FIG. 3is a block diagram illustrating an example communication system 300 inwhich various embodiments may be implemented in accordance with thepresent disclosure for achieving such location-based aspects of thevarious embodiments. Communications system 300 may include a pluralityof mobile devices, of which mobile devices 302-308 (one or more of whichmay be example embodiments of user devices 202A and 202B of FIG. 2A) areillustrated. Example mobile devices may include a smart phone 302, anidentification device, such as an NFC ID band 304, a tablet PC 306,and/or a laptop PC 308. Also shown in communication system 300 is amobile core network 310, a wireless access point (AP) 312, a cellularbase station (BS) 314, a Bluetooth® emitter 316, an NFC terminal 318, aglobal navigation satellite system (GNSS) network 320, a plurality ofGNSS satellites 322 a-322 n, an internet 330, a location server 340, anda satellite reference network (SRN) 350. One or more of mobile corenetwork 310, wireless AP 312, cellular BS 314, Bluetooth® emitter 316,NFC terminal 318, GNSS network 320, GNSS satellites 322 a-322 n,internet 330, location server 340, and/or satellite reference network(SRN) 350 can be used to determine the location of one or more of themobile devices 302-308 and/or for determining the location of at leastone user relative to another user. One or more or all of the networksillustrated in FIG. 3 may be an embodiment of network 210 of FIG. 2A ormay be additional networks over which the various elements of FIG. 2Amay communicate and/or interact.

Wireless AP 312 may include suitable logic, circuitry, interfaces,and/or code that are operable to provide data services to communicationdevices, such as one or more of the mobile devices 302-308, in adherencewith one or more wireless LAN (WLAN) standards such as, for example,IEEE 802.11, 802.11a, 802.11, 802.11d, 802.11e, 802.11n, 802.11ac,802.11v, and/or 802.11u. Wireless AP 312 may communicate with mobilecore network 310 and/or internet 330, via one or more links and/orassociated devices for example. In this manner, wireless AP 312 mayprovide network access to mobile devices 302-308.

Cellular BS 314 may include suitable logic, circuitry, interfaces,and/or code that are operable to provide voice and/or data services tocommunication devices, such as one or more of the mobile devices302-308, in adherence with one or more cellular communication standards.Exemplary cellular communication standards may include Global System forMobile communications (GSM), General Packet Radio Services (GPRS),Universal Mobile Telecommunications System (UMTS), Enhanced Data ratesfor GSM Evolution (EDGE), Enhanced GPRS (EGPRS), and/or 3GPP Long TermEvolution (LTE). Cellular BS 314 may communicate with mobile corenetwork 310 and/or internet 330, via one or more backhaul links and/orassociated devices for example. In this manner, cellular BS 314 mayprovide network access to mobile devices 302-308, enabling a mobiledevice, such as smart phone 302, to communicate with one or moredatabases, services, servers, networks, or interactive media walls asdescribed herein.

Bluetooth® emitter 316 may include suitable logic, circuitry,interfaces, and/or code that are operable to provide Bluetooth® basedconnectivity to communication devices, such as one or more of mobiledevices 302-308, in adherence with various Bluetooth® and/or Bluetooth®Low Energy (BLE) standards. Bluetooth® emitter 316 may communicate withmobile core network 310 and/or internet 330, via one or more backhaullinks and/or associated devices for example. In this manner, Bluetooth®emitter 316 may provide network access to mobile devices 302-308,enabling a mobile device, such as smart phone 302 to communicate withone or more entities of system 300.

NFC terminal 318 may include suitable logic, circuitry, interfaces,and/or code that can provide NFC-based connectivity to communicationdevices, such as one or more of the mobile devices 302-308, in adherencewith various short range communication standards such as the Near FieldCommunications standards. The NFC terminal 318 may communicate with themobile core network 310 and/or the internet 330, via one or morebackhaul links and/or associated devices for example. In this manner,the NFC terminal 318 may provide network access to the mobile devices302-308. Alternatively, NFC functionality may be resident within each ofthe mobile devices 302-308.

Mobile core network 310 may include suitable logic, circuitry,interfaces, and/or code that are operable to provide interfacing and/orconnectivity servicing between access networks, which may be utilized bythe mobile devices 302-308, and external data networks such as packetdata networks (PDNs) and/or internet 330. Mobile core network 310 maycorrespond to one or more service providers that provide, control,and/or manage network accessibility available via mobile devices302-308. In this regard, mobile devices 302-308 may access the mobilecore network 310 via wireless AP 312, cellular BS 314, Bluetooth®emitter 316, and/or NFC terminal 318. Mobile core network 310 maycommunicate various data services, which are provided by external datanetworks, to associated user devices such as, for example, mobiledevices 302-308. In an example aspect of the disclosure, mobile corenetwork 310 may be operable to communicate with location server 340 toobtain location information that can be used to ascertain the relativelocations of mobile devices 302-308.

Each of mobile devices 302-308 may include suitable logic, circuitry,interfaces, and/or code for implementing various aspects of theembodiments disclosed herein. In this regard, each of mobile devices302-308 may be operable to communicate via a plurality of wired and/orwireless connections. Each of mobile devices 302-308 may be operable,for example, to transmit to and/or receive signals from one or more ofwireless AP 312, cellular BS 314, Bluetooth® emitter 316, NFC terminal318, GNSS network 320, and/or internet 330. Also, each of mobile devices302-308 may be operable to communicate with, and/or receive servicesprovided by internet 330 and/or mobile core network 310.

GNSS network 320 may include suitable logic, circuitry, interfaces,and/or code that may provide navigation information to land-baseddevices via satellite links. In this regard, GNSS network 320 mayinclude, for example, a plurality of GNSS satellites 322 a-322 n, eachof which is operable to provide satellite transmissions based on a GNSS,enabling land-based devices, such as the mobile devices 302-308, todetermine their locations. SRN 350 may include suitable logic,circuitry, interfaces, and/or code that are operable to collect and/ordistribute data for GNSS satellites on a continuous basis. SRN 350 mayinclude a plurality of GNSS reference tracking stations located aroundthe world to provide A-GNSS coverage all the time in both a home networkand/or any visited network.

Location server 340 may include suitable logic, circuitry, interfaces,and/or code that are operable to provide and/or support location basedservices. In this regard, location server 340 may be operable to storeand/or process location related information pertaining to communicationdevices in system 300, such as one or more of mobile devices 302-308, aswell as the location of other entities, such as points of interest,merchants, etc. It should be noted that location server 340 may accessand/or communicate with other location servers/services (not shown) forthe purpose of associating a location of communication devices in system300 with known locations of other entities, points of interest, etc. Thelocation information may be stored in a location reference database 342in location server 340. Location server 340 may be operable to collectand/or retrieve location information from communication devices.Location server 340 may communicate the stored location data whenrequested to do so.

In operation, location server 340 may maintain, for example, locationreference database 342, which may include elements corresponding to eachof mobile devices 302-308. Location server 340 may access SRN 350 tocollect GNSS satellite data, and may utilize the collected GNSSsatellite data to generate GNSS assistance data (A-GNSS data) pertainingto the mobile devices 302-308. Location server 340 may also collectand/or retrieve location information directly from mobile devices302-308, and/or from other associated entities that interact with mobiledevices 302-308 in system 300, such as, for example, wireless AP 312,cellular BS 314, Bluetooth® emitter 316, and/or NFC terminal 318. Theretrieved location information may be stored in location referencedatabase 342 in location server 340. Location server 340 may communicatethe stored location data, e.g., when requested to do so. Locationreference database 342, maintained in location server 340, may bemodified, refined, and/or updated using retrieved location information.Location information stored and/or maintained by location server 340 maybe utilized to augment and/or substitute for location informationreceived and/or generated based on communication with GNSS network 320,for example, when communication with GNSS network 320 is disturbed.

The location data may also be locally generated, and/or maintainedthereafter by devices and/or entities other than location server 340. Inthis regard, location related data, which typically may be generatedand/or maintained by location server 340, may be locally generated,maintained, and/or used by mobile devices 302-308, and/or by serviceproviders thereof. Accordingly, devices and/or entities that typicallymay be serviced by location server 340, such as mobile devices 302-308,may also perform location related servicing locally. Furthermore,locally generated and/or maintained location related data may beuploaded from mobile devices 302-308, and/or service providers thereof,to location server 340. Uploading the location related data may beperformed periodically, on request, and/or based on the configuration ofthe client devices or entities, and/or location server 340 itself.

It should be noted that the example embodiments described herein are notlimiting, and the systems and methods of providing personalized contentrecommendations set forth in the present disclosure can be applied tomany different scenarios. For example, personalized contentrecommendations as described herein can be leveraged to present targetedadvertising or content to shoppers in a mall through kiosks, digitalphoto frames, targeted content while waiting in queues, etc.Furthermore, the presentation of personalized content recommendationscan involve the creation of short-form content, such as trailers. Forexample, upon detecting the physical proximity of a first user deviceand a second user device, a system may select one or more movies andselect certain scenes of the movie(s) based on the users' preferences(e.g., action movies, comedies, certain actors/actresses), interests(e.g., sports, hobbies), and the like to create one or more shortvideos, such as teasers or trailers, to show to the first and secondusers. Referring back to FIG. 2C, the view option may be, in someembodiments, the presentation of such short-form trailers or otherderivative content. For example, if two users who like action movies anda certain actor bring their user devices within a proximity to eachother, the system may select action scenes of a movie and/or scenes withthat actor and compile the selected scenes in a 2-minute video to showto the two users. Moreover, the TV option illustrated in FIG. 2C, may inother embodiments, reflect a personalized TV guide that can be anaggregation of sources (channels, content provider platforms, physicalmedia) and/or recommended viewing times.

It should also be noted that previously presented contentrecommendations can be stored in a memory, such as memory 206A (FIG. 2B)or within a database (not shown) associated with central server 220 orcontent provider 212 (FIG. 1A). In this way, inputs can be tracked on agroup level, and the same or alternative personalized contentrecommendations can be given, for example, the next time the same orsimilar group of users are determined to be proximate to each other.Content discovery can be achieved by leveraging previously presentedcontent recommendations in combination with, e.g., newly obtainedcontent, by one or more users in the group.

FIG. 4 illustrates an example computing module that may be used toimplement various features of the system and methods disclosed herein.

As used herein, the term module might describe a given unit offunctionality that can be performed in accordance with one or moreembodiments of the present application. As used herein, a module mightbe implemented utilizing any form of hardware, software, or acombination thereof. For example, one or more processors, controllers,ASICs, PLAs, PALs, CPLDs, FPGAs, logical components, software routinesor other mechanisms might be implemented to make up a module. Inimplementation, the various modules described herein might beimplemented as discrete modules or the functions and features describedcan be shared in part or in total among one or more modules. In otherwords, as would be apparent to one of ordinary skill in the art afterreading this description, the various features and functionalitydescribed herein may be implemented in any given application and can beimplemented in one or more separate or shared modules in variouscombinations and permutations. Even though various features or elementsof functionality may be individually described or claimed as separatemodules, one of ordinary skill in the art will understand that thesefeatures and functionality can be shared among one or more commonsoftware and hardware elements, and such description shall not requireor imply that separate hardware or software components are used toimplement such features or functionality.

Where components or modules of the application are implemented in wholeor in part using software, in one embodiment, these software elementscan be implemented to operate with a computing or processing modulecapable of carrying out the functionality described with respectthereto. One such example computing module is shown in FIG. 4. Variousembodiments are described in terms of this example-computing module 400.After reading this description, it will become apparent to a personskilled in the relevant art how to implement the application using othercomputing modules or architectures.

Referring now to FIG. 4, computing module 400 may represent, forexample, computing or processing capabilities found within aself-adjusting display, desktop, laptop, notebook, and tablet computers;hand-held computing devices (tablets, PDA's, smart phones, cell phones,palmtops, etc.); workstations or other devices with displays; servers;or any other type of special-purpose or general-purpose computingdevices as may be desirable or appropriate for a given application orenvironment. Computing module 400 might also represent computingcapabilities embedded within or otherwise available to a given device.For example, a computing module might be found in other electronicdevices such as, for example navigation systems, portable computingdevices, and other electronic devices that might include some form ofprocessing capability.

Computing module 400 might include, for example, one or more processors,controllers, control modules, or other processing devices, such as aprocessor 404. Processor 404 might be implemented using ageneral-purpose or special-purpose processing engine such as, forexample, a microprocessor, controller, or other control logic. In theillustrated example, processor 404 is connected to a bus 402, althoughany communication medium can be used to facilitate interaction withother components of computing module 400 or to communicate externally.

Computing module 400 might also include one or more memory modules,simply referred to herein as main memory 408. For example, preferablyrandom access memory (RAM) or other dynamic memory, might be used forstoring information and instructions to be executed by processor 404.Main memory 408 might also be used for storing temporary variables orother intermediate information during execution of instructions to beexecuted by processor 404. Computing module 400 might likewise include aread only memory (“ROM”) or other static storage device coupled to bus402 for storing static information and instructions for processor 404.

The computing module 400 might also include one or more various forms ofinformation storage mechanism 410, which might include, for example, amedia drive 412 and a storage unit interface 420. The media drive 412might include a drive or other mechanism to support fixed or removablestorage media 414. For example, a hard disk drive, a solid state drive,a magnetic tape drive, an optical disk drive, a compact disc (CD) ordigital video disc (DVD) drive (R or RW), or other removable or fixedmedia drive might be provided. Accordingly, storage media 414 mightinclude, for example, a hard disk, an integrated circuit assembly,magnetic tape, cartridge, optical disk, a CD or DVD, or other fixed orremovable medium that is read by, written to or accessed by media drive412. As these examples illustrate, the storage media 414 can include acomputer usable storage medium having stored therein computer softwareor data.

In alternative embodiments, information storage mechanism 410 mightinclude other similar instrumentalities for allowing computer programsor other instructions or data to be loaded into computing module 400.Such instrumentalities might include, for example, a fixed or removablestorage unit 422 and an interface 420. Examples of such storage units422 and interfaces 420 can include a program cartridge and cartridgeinterface, a removable memory (for example, a flash memory or otherremovable memory module) and memory slot, a PCMCIA slot and card, andother fixed or removable storage units 422 and interfaces 420 that allowsoftware and data to be transferred from the storage unit 422 tocomputing module 400.

Computing module 400 might also include a communications interface 424.Communications interface 424 might be used to allow software and data tobe transferred between computing module 400 and external devices.Examples of communications interface 424 might include a modem orsoftmodem, a network interface (such as an Ethernet, network interfacecard, WiMedia, IEEE 802.XX or other interface), a communications port(such as for example, a USB port, IR port, RS232 port Bluetooth®interface, or other port), or other communications interface. Softwareand data transferred via communications interface 424 might typically becarried on signals, which can be electronic, electromagnetic (whichincludes optical) or other signals capable of being exchanged by a givencommunications interface 424. These signals might be provided tocommunications interface 424 via a channel 428. This channel 428 mightcarry signals and might be implemented using a wired or wirelesscommunication medium. Some examples of a channel might include a phoneline, a cellular link, an RF link, an optical link, a network interface,a local or wide area network, and other wired or wireless communicationschannels.

In this document, the terms “computer program medium” and “computerusable medium” are used to generally refer to transitory ornon-transitory media such as, for example, memory 408, storage unit 420,media 414, and channel 428. These and other various forms of computerprogram media or computer usable media may be involved in carrying oneor more sequences of one or more instructions to a processing device forexecution. Such instructions embodied on the medium, are generallyreferred to as “computer program code” or a “computer program product”(which may be grouped in the form of computer programs or othergroupings). When executed, such instructions might enable the computingmodule 400 to perform features or functions of the present applicationas discussed herein.

Although described above in terms of various exemplary embodiments andimplementations, it should be understood that the various features,aspects and functionality described in one or more of the individualembodiments are not limited in their applicability to the particularembodiment with which they are described, but instead can be applied,alone or in various combinations, to one or more of the otherembodiments of the application, whether or not such embodiments aredescribed and whether or not such features are presented as being a partof a described embodiment. Thus, the breadth and scope of the presentapplication should not be limited by any of the above-describedexemplary embodiments.

Terms and phrases used in this document, and variations thereof, unlessotherwise expressly stated, should be construed as open ended as opposedto limiting. As examples of the foregoing: the term “including” shouldbe read as meaning “including, without limitation” or the like; the term“example” is used to provide exemplary instances of the item indiscussion, not an exhaustive or limiting list thereof; the terms “a” or“an” should be read as meaning “at least one,” “one or more” or thelike; and adjectives such as “conventional,” “traditional,” “normal,”“standard,” “known” and terms of similar meaning should not be construedas limiting the item described to a given time period or to an itemavailable as of a given time, but instead should be read to encompassconventional, traditional, normal, or standard technologies that may beavailable or known now or at any time in the future. Likewise, wherethis document refers to technologies that would be apparent or known toone of ordinary skill in the art, such technologies encompass thoseapparent or known to the skilled artisan now or at any time in thefuture.

The presence of broadening words and phrases such as “one or more,” “atleast,” “but not limited to” or other like phrases in some instancesshall not be read to mean that the narrower case is intended or requiredin instances where such broadening phrases may be absent. The use of theterm “module” does not imply that the components or functionalitydescribed or claimed as part of the module are all configured in acommon package. Indeed, any or all of the various components of amodule, whether control logic or other components, can be combined in asingle package or separately maintained and can further be distributedin multiple groupings or packages or across multiple locations.

Additionally, the various embodiments set forth herein are described interms of exemplary block diagrams, flow charts and other illustrations.As will become apparent to one of ordinary skill in the art afterreading this document, the illustrated embodiments and their variousalternatives can be implemented without confinement to the illustratedexamples. For example, block diagrams and their accompanying descriptionshould not be construed as mandating a particular architecture orconfiguration.

1. A computer-implemented method, comprising: determining a firstlocation of a first user device associated with a first user;determining a second location of a second user device associated with asecond user; determining whether the first location of the first userdevice is proximate to the second location of the second user device;upon a determination that the first and second locations are proximateto each other, binding one or more media content-related characteristicsregarding the first and second users; determining a relationship betweenthe first and second users based upon the one or more mediacontent-related characteristics; and without first or second user inputregarding user content preferences, providing a recommendation of mediacontent to consume based upon the determined relationship.
 2. Thecomputer-implemented method of claim 1, wherein the one or more mediacontent-related characteristics comprises at least one of personalcharacteristics and historical content-consumption characteristics. 3.The computer-implemented method of claim 1, wherein determining therelationship between the first and second users comprises comparingrespective media content libraries of the first user and the second userto determine common media content between the respective contentlibraries, and wherein the recommendation comprises the common mediacontent.
 4. The computer-implemented method of claim 3, wherein thecomparing of the respective media content libraries of the first andsecond users occurs at one of a user account level, a media serviceapplication level, and a user device level.
 5. The computer-implementedmethod of claim 1, further comprising determining at least one active,passive, environmental and temporal aspects currently associated withthe first and second users.
 6. The computer-implemented method of claim1, wherein determining whether the first location of the first userdevice is proximate to the second location of the second user devicecomprises determining the first and second user devices' respectivelocations using at least one of location-based services and near fieldcommunication (NFC) services.
 7. The computer-implemented method ofclaim 6, wherein the NFC services comprises a discovery protocol throughwhich at least one of the first or second user devices broadcasts anidentifier and at least one of the other of the first or second userdevices scans for the identifier.
 8. The computer-implemented method ofclaim 1, wherein the recommendation is temporary and dynamically basedupon continuing proximity of the first and second user devices andrights associated with at least one of the first and second users toconsume the selected media content.
 9. The computer-implemented methodof claim 1, further comprising allowing the first user to select apresentation of media content from one or more media content indicatedin the recommendation, and presenting the selected media content on atleast one of the first and second user devices associated with at leastone of the first and second user having rights to consume the selectedmedia content.
 10. The computer-implemented method of claim 1, furthercomprising providing a temporary grant or exchange of one or moreentitlements associated with the one or more media contents indicated inthe recommendation from the first user to the second user.
 11. Thecomputer-implemented method of claim 9, wherein the presentation ofmedia content selected from one or more media content indicated in therecommendation comprises casting the selected media content to at leastone of the first and second user devices and a communal presentationdevice proximate to the first and second users.
 12. Thecomputer-implemented method of claim 1, wherein the recommendationcomprises at least one of a listing of one or more media contents,options to at least one buy, rent, and pre-order the one or more mediacontents, a suggested venue at which to consume the one or more mediacontents, a derivative media content based on the one or more mediacontents, and at least one of times and media channels when and throughwhich the one or more media contents are to be consumed.
 13. Thecomputer-implemented method of claim 1, further comprising using the oneor more media content-related characteristics of the first and secondusers to select scenes of a movie to show as a trailer to the first andsecond users.
 14. An apparatus, comprising: a processor; and a memoryunit operatively connected to the processor including computer codeadapted to cause the processor to : receive at least one of active andpassive input from a plurality of users proximate to each other, activeand passive input comprising one or more media content-related userpreferences and historical content consumption information; receivetemporal input indicative of a current time and environmental inputindicative of an environment in which the plurality of users arecurrently present; determine at least one of common and related aspectsof the at least one of the active and passive inputs, and the temporaland environmental inputs relative to one or more media contentscomprising respective media libraries of each of the plurality of users;and output at least one recommendation for the one or more mediacontents based upon the at least one of common and related aspects. 15.The apparatus of claim 14, wherein the active input comprises one ormore media content-related parameters or preferences associated with oneor more of the plurality of users input by the user.
 16. The apparatusof claim 14, wherein the passive input comprises one or more mediacontent-related parameters or preferences associated with one or more ofthe plurality of users determined by analyzing at least one of currentand historical media content-related activities engaged in by one ormore of the plurality of users.
 17. The apparatus of claim 14, whereinthe temporal input comprises at least one of a current time at which theone or more recommended media contents are to be consumed and a durationover which the one or more recommended media contents are to beconsumed.
 18. The apparatus of claim 14, wherein the one or morerecommended media contents are prioritized based upon weights applied tothe at least one of common and related aspects.
 19. The apparatus ofclaim 14, wherein the computer code adapted to cause the processor tooutput the at least one recommendation further causes the processor toadjust the at least one recommendation or output at least onealternative recommendation upon one or more of the plurality of usersdeparting a predetermined area of proximity in which the plurality ofusers are currently located, or upon entry of another user into thepredetermined area of proximity.
 20. The apparatus of claim 14, whereinthe at least one recommendation comprises at least one of a listing ofthe one or more media contents, options to at least one of buy, rent,and pre-order the one or more media contents, a suggested venue at whichto consume the one or more media contents, a derivative media contentbased on the one or more media contents, and at least one of times andmedia channels when and through which the one or more media contents areto be consumed.